package com.haixiaoke.saas.lock.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.haixiaoke.saas.common.annotation.Excel;
import com.haixiaoke.saas.common.core.domain.BaseEntity;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.Date;


/**
 * 锁人脸信息对象 biz_lock_face
 *
 * @author qixi
 * @date 2024-07-26
 */
@Data
public class LockFace extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 人脸信息id
     */
    private Long faceId;

    /**
     * 锁信息id
     */
    @Excel(name = "锁信息id")
    @NotNull(message = "锁信息id不能为空")
    private Long lockId;

    /**
     * 关联订单id
     */
    @Excel(name = "关联订单id")
    private String orderId;

    /**
     * 房屋ID
     */
    @Excel(name = "房屋ID")
    private String houseId;

    /**
     * 人脸照
     */
    @Excel(name = "人脸照")
    @NotNull(message = "人脸照不能为空")
    private String img;

    /**
     * 用户名
     */
    @Excel(name = "用户名")
    @NotNull(message = "用户名不能为空")
    private String userName;

    /**
     * 用户ID
     */
    @Excel(name = "用户ID")
    private Long userId;

    /**
     * 用户类型: 1管理员 2租客
     */
    @Excel(name = "用户类型: 1管理员 2租客")
    private String userType;

    /**
     * 开锁标识
     */
    @Excel(name = "开锁标识")
    private String identification;

    /**
     * 授权开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "授权开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date authStartTime;

    /**
     * 授权结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "授权结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date authEndTime;

    /**
     * 人脸状态: 1启用 2禁用
     */
    private String faceState;


    /**
     * 智能锁MAC
     */
    private String mac;


}
